package com.vrv.common.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import android.annotation.SuppressLint;

public class DateUtils {

	/*
	 * 获取当前系统时间字符串
	 */
	public static String getCurrentTimeString() {
		Calendar ca = Calendar.getInstance();
		int year = ca.get(Calendar.YEAR); // 获取年份
		int month = ca.get(Calendar.MONTH); // 获取月份
		int day = ca.get(Calendar.DATE); // 获取日
		int hour = ca.get(Calendar.HOUR); // 获取小时
		int minute = ca.get(Calendar.MINUTE); // 获取分
		int second = ca.get(Calendar.SECOND); // 获取秒
		int millisecond = ca.get(Calendar.MILLISECOND); // 获取毫秒
		String date = "" + year + (month + 1) + day + hour + minute + second + millisecond;
		return date;
	}
	/*
	 * 转换long型为标准日期串
	 */
	@SuppressLint("SimpleDateFormat")
	public static String getFormatDate(long date){
		String dateStr = "";
		SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");    
		if (0 == date) return dateStr;
		dateStr = sDateFormat.format(new Date(date)); 
		return dateStr;
	}
	/*
	 * 获取过去pastCount天的日期串
	 */
	@SuppressLint("SimpleDateFormat")
	public static String getPastDate(int pastCount) {
		Date date = new Date();// 取时间
		Calendar calendar = Calendar.getInstance();
		calendar.setTime(date);
		calendar.add(Calendar.DATE, pastCount);// 把日期往后增加一天.整数往后推,负数往前移动
		date = calendar.getTime(); // 这个时间就是日期往后推一天的结果
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
		return formatter.format(date);
	}
	
	/**
	 * 将时间类型字符串转为long型
	 * 时间格式yyyy-MM-dd hh:mm:ss
	 * @return
	 */
	public static long getLongDate(String sDate){
		try {
			SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
			Date ret = sdf.parse(sDate);
			return ret.getTime();
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return 0;
	}
	
	/**
	 * 获取当前时间字符串类型
	 * 时间格式yyyy-MM-dd hh:mm:ss
	 * @return
	 */
	public static String getCurrentTime(){
		SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String ret = sdf.format(new Date());
		return ret;
	}
}
